Path: api/v1/projects/{projectno}/comments
This API is JSON:API compliant.
This endpoint supports the following methods:
GET POST PATCH
This endpoint requires an OAuth bearer token, and returns errors in a standard shape. See API Conventions for authentication, error responses and paging, which apply to every endpoint.
The resource type for this endpoint is ContractComment
The identifier is projectno-lineid
Attributes
The ContractComment resource type attributes are as follows:
| Attribute | Type | Read-only | Description |
|---|---|---|---|
| comment | string | The comment text. | |
| modifyDate | string | ✓ | The modification date and time of the comment in ISO date time format. Timezone is the timezone of the Jim2 server. |
| modifyInit | string | ✓ | The initials of the user who last modified the comment. |
| status | string | ✓ | The status the parent object was in when the comment was added. |
Path: api/v1/projects/10/comments Response: This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response. This is a list. To keep the example readable, only the first item below is written out; the later items have been trimmed down in this documentation. In a real response each item comes back with the data applicable to that record (as described above). Side-loading related resources with the include query parameter is not supported on list endpoints: an include parameter is ignored here and no included section is returned. To retrieve a related resource, request it directly using the id shown in each item's relationships, or use the single-resource (get by id) endpoint, which does support include.
Example GET (Return all)
{
"data": [
{
"id": "10-1",
"type": "ContractComment",
"attributes": {
"status": "Booked",
"comment": "Customer approved the annual service schedule.",
"modifyInit": "SYS",
"modifyDate": "2024-03-25T17:07:23+11:00"
}
}
]
}
Path: api/v1/projects/10/comments/10-1 Response: This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.
Example GET (Return specific)
{
"data": {
"id": "10-1",
"type": "ContractComment",
"attributes": {
"status": "Booked",
"comment": "Customer approved the annual service schedule.",
"modifyInit": "SYS",
"modifyDate": "2024-03-25T17:07:23+11:00"
},
"links": {
"self": "/api/v1/projects/10/comments/10-1"
}
}
}
Path: api/v1/projects/10/comments Request: Response: This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.
Example POST
{
"data": {
"type": "ContractComment",
"attributes": {
"comment": "Add new comment"
}
}
}
{
"data": {
"id": "10-2",
"type": "ContractComment",
"attributes": {
"status": "Booked",
"comment": "Add new comment",
"modifyInit": "API",
"modifyDate": "2021-03-10T11:33:53"
},
"links": {
"self": "/api/v1/projects/10/comments/10-2"
}
}
}
Path: api/v1/projects/10/comments/10-1 Request: Response: This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.
Example PATCH
{
"data": {
"id": "10-1",
"type": "ContractComment",
"attributes": {
"comment": "Test"
}
}
}
{
"data": {
"id": "10-1",
"type": "ContractComment",
"attributes": {
"status": "Booked",
"comment": "Test",
"modifyInit": "API",
"modifyDate": "2021-03-10T11:33:53"
},
"links": {
"self": "/api/v1/projects/10/comments/10-1"
}
}
}